//
//  FFLogConfig.h
//  FFSurveillance
//
//  Created by roro_latrobe on 16/10/28.
//  Copyright © 2016年 cn.wanda. All rights reserved.
//

#import "FFConfig.h"

@interface FFLogConfig : FFConfig

/**
 *	过滤日志的模式串
 */
@property (nonatomic, copy)NSString *filterPattern;

/**
 *	过滤是否忽略大小写.默认为YES
 */
@property (nonatomic, assign)BOOL isCaseInsensitive;

/**
 *	过滤是否完全匹配.默认为NO
 */
@property (nonatomic, assign)BOOL isCompelteMatch;

/**
 *	过滤文件名集合.此集合里的文件内产生的日志将不会显示
 */
@property (nonatomic, retain)NSMutableSet *filterFileNameSet;

/**
 *	过滤业务集合.此集合里的业务内产生的日志将不会显示
 */
@property (nonatomic, retain)NSMutableSet *filterBusinessSet;

/**
 *	过滤函数名集合.此集合里的函数内产生的日志将不会显示
 */
@property (nonatomic, retain)NSMutableSet *filterMethodNameSet;

/**
 *	存储文件名.必须线程安全
 */
@property (atomic, retain)NSMutableSet *saveFileNameSet;


/**
 *	存储方法名.必须线程安全
 */
@property (atomic, retain)NSMutableSet *saveMethodNameSet;

/**
 *	是否写入文件.默认为YES
 */
@property (nonatomic, assign)BOOL isWriteLogIntoFile;


/**
 *	显示文件名.
 */
@property (nonatomic, assign)BOOL isShowFileName;

/**
 *	显示函数名
 */
@property (nonatomic, assign)BOOL isShowFunctionName;

/**
 *	显示行号
 */
@property (nonatomic, assign)BOOL isShowLineNumber;

/**
 *	显示时间
 */
@property (nonatomic, assign)BOOL isShowTime;

/**
 *	显示所在线程名
 */
@property (nonatomic, assign)BOOL isShowThead;

/**
 *	显示所在进程名
 */
@property (nonatomic, assign)BOOL isShowProcess;

/**
 *	日志是否写入文件
 */
@property (nonatomic, assign)BOOL isWriteToFile;


/**
 *	是否开启远程访问。可以通过IP地址访问app下所有文件
 */
@property (nonatomic, assign) BOOL isRemoteAccess;

/**
 *	如果开启了远程访问，那么可以获取到访问的IP地址和端口
 */
@property (nonatomic, readonly) NSString *remoteAccessIPAddress;



/**
 *	现在是否显示了日志组件
 */
@property (nonatomic, assign)BOOL isShowLogView;


/**
 *	ALog的标志按钮所在的window，可以修改此window的frame，样式等.
 */
@property (strong, readonly) UIWindow *logWindow;

@end
